home *** CD-ROM | disk | FTP | other *** search
/ PC Gamer (Italian) 48 / PC Gamer IT CD 48 2-2.iso / Starsiege / tribesdemo.exe / Disk1 / data1.cab / Tribes_Demo / base / scripts.vol / ArmorData.cs < prev    next >
Encoding:
Text File  |  1999-09-14  |  42.3 KB  |  1,140 lines

  1. //----------------------------------------------------------------------------
  2. // Light Armor
  3. //----------------------------------------------------------------------------
  4.  
  5. $DamageScale[larmor, $LandingDamageType] = 1.0;
  6. $DamageScale[larmor, $ImpactDamageType] = 1.0;
  7. $DamageScale[larmor, $CrushDamageType] = 1.0;
  8. $DamageScale[larmor, $BulletDamageType] = 1.2;
  9. $DamageScale[larmor, $PlasmaDamageType] = 1.0;
  10. $DamageScale[larmor, $EnergyDamageType] = 1.3;
  11. $DamageScale[larmor, $ExplosionDamageType] = 1.0;
  12. $DamageScale[larmor, $MissileDamageType] = 1.0;
  13. $DamageScale[larmor, $DebrisDamageType] = 1.2;
  14. $DamageScale[larmor, $ShrapnelDamageType] = 1.2;
  15. $DamageScale[larmor, $LaserDamageType] = 1.0;
  16. $DamageScale[larmor, $MortarDamageType] = 1.3;
  17. $DamageScale[larmor, $BlasterDamageType] = 1.3;
  18. $DamageScale[larmor, $ElectricityDamageType] = 1.0;
  19. $DamageScale[larmor, $MineDamageType] = 1.2;
  20.  
  21. $ItemMax[larmor, Blaster] = 1;
  22. $ItemMax[larmor, Chaingun] = 1;
  23. $ItemMax[larmor, Disclauncher] = 1;
  24. $ItemMax[larmor, GrenadeLauncher] = 1;
  25. $ItemMax[larmor, Mortar] = 0;
  26. $ItemMax[larmor, PlasmaGun] = 1;
  27. $ItemMax[larmor, LaserRifle] = 1;
  28. $ItemMax[larmor, EnergyRifle] = 1;
  29. $ItemMax[larmor, TargetingLaser] = 1;
  30. $ItemMax[larmor, MineAmmo] = 3;
  31. $ItemMax[larmor, Grenade] = 5;
  32. $ItemMax[larmor, Beacon]  = 3;
  33.  
  34. $ItemMax[larmor, BulletAmmo] = 100;
  35. $ItemMax[larmor, PlasmaAmmo] = 30;
  36. $ItemMax[larmor, DiscAmmo] = 15;
  37. $ItemMax[larmor, GrenadeAmmo] = 10;
  38. $ItemMax[larmor, MortarAmmo] = 10;
  39.  
  40. $ItemMax[larmor, EnergyPack] = 1;
  41. $ItemMax[larmor, RepairPack] = 1;
  42. $ItemMax[larmor, ShieldPack] = 1;
  43. $ItemMax[larmor, SensorJammerPack] = 1;
  44. $ItemMax[larmor, MotionSensorPack] = 1;
  45. $ItemMax[larmor, PulseSensorPack] = 1;
  46. $ItemMax[larmor, DeployableSensorJammerPack] = 1;
  47. $ItemMax[larmor, CameraPack] = 1;
  48. $ItemMax[larmor, TurretPack] = 0;
  49. $ItemMax[larmor, AmmoPack] = 1;
  50. $ItemMax[larmor, RepairKit] = 1;
  51. $ItemMax[larmor, DeployableInvPack] = 0;
  52. $ItemMax[larmor, DeployableAmmoPack] = 0;
  53.  
  54. $MaxWeapons[larmor] = 3;
  55.  
  56. //----------------------------------------------------------------------------
  57. // Medium Armor
  58. //----------------------------------------------------------------------------
  59. $DamageScale[marmor, $LandingDamageType] = 1.0;
  60. $DamageScale[marmor, $ImpactDamageType] = 1.0;
  61. $DamageScale[marmor, $CrushDamageType] = 1.0;
  62. $DamageScale[marmor, $BulletDamageType] = 1.0;
  63. $DamageScale[marmor, $PlasmaDamageType] = 0.6;
  64. $DamageScale[marmor, $EnergyDamageType] = 1.0;
  65. $DamageScale[marmor, $ExplosionDamageType] = 1.0;
  66. $DamageScale[marmor, $MissileDamageType] = 1.0;
  67. $DamageScale[marmor, $ShrapnelDamageType] = 1.0;
  68. $DamageScale[marmor, $DebrisDamageType] = 1.0;
  69. $DamageScale[marmor, $LaserDamageType] = 1.0;
  70. $DamageScale[marmor, $MortarDamageType] = 1.0;
  71. $DamageScale[marmor, $BlasterDamageType] = 1.0;
  72. $DamageScale[marmor, $ElectricityDamageType] = 1.0;
  73. $DamageScale[marmor, $MineDamageType] = 1.0;
  74.  
  75. $ItemMax[marmor, Blaster] = 1;
  76. $ItemMax[marmor, Chaingun] = 1;
  77. $ItemMax[marmor, Disclauncher] = 1;
  78. $ItemMax[marmor, GrenadeLauncher] = 1;
  79. $ItemMax[marmor, Mortar] = 0;
  80. $ItemMax[marmor, PlasmaGun] = 1;
  81. $ItemMax[marmor, LaserRifle] = 0;
  82. $ItemMax[marmor, EnergyRifle] = 1;
  83. $ItemMax[marmor, TargetingLaser] = 1;
  84. $ItemMax[marmor, MineAmmo] = 3;
  85. $ItemMax[marmor, Grenade] = 6;
  86. $ItemMax[marmor, Beacon] = 3;
  87.  
  88. $ItemMax[marmor, BulletAmmo] = 150;
  89. $ItemMax[marmor, PlasmaAmmo] = 40;
  90. $ItemMax[marmor, DiscAmmo] = 15;
  91. $ItemMax[marmor, GrenadeAmmo] = 10;
  92. $ItemMax[marmor, MortarAmmo] = 10;
  93.  
  94. $ItemMax[marmor, EnergyPack] = 1;
  95. $ItemMax[marmor, RepairPack] = 1;
  96. $ItemMax[marmor, ShieldPack] = 1;
  97. $ItemMax[marmor, SensorJammerPack] = 1;
  98. $ItemMax[marmor, MotionSensorPack] = 1;
  99. $ItemMax[marmor, PulseSensorPack] = 1;
  100. $ItemMax[marmor, DeployableSensorJammerPack] = 1;
  101. $ItemMax[marmor, CameraPack] = 1;
  102. $ItemMax[marmor, TurretPack] = 1;
  103. $ItemMax[marmor, AmmoPack] = 1;
  104. $ItemMax[marmor, RepairKit] = 1;
  105. $ItemMax[marmor, DeployableInvPack] = 1;
  106. $ItemMax[marmor, DeployableAmmoPack] = 1;
  107.  
  108. $MaxWeapons[marmor] = 4;
  109.  
  110. //----------------------------------------------------------------------------
  111. // Heavy Armor
  112. //----------------------------------------------------------------------------
  113. $DamageScale[harmor, $LandingDamageType] = 1.0;
  114. $DamageScale[harmor, $ImpactDamageType] = 1.0;
  115. $DamageScale[harmor, $CrushDamageType] = 1.0;
  116. $DamageScale[harmor, $BulletDamageType] = 0.6;
  117. $DamageScale[harmor, $PlasmaDamageType] = 0.4;
  118. $DamageScale[harmor, $EnergyDamageType] = 0.7;
  119. $DamageScale[harmor, $ExplosionDamageType] = 0.6;
  120. $DamageScale[harmor, $MissileDamageType] = 0.6;
  121. $DamageScale[harmor, $DebrisDamageType] = 0.8;
  122. $DamageScale[harmor, $ShrapnelDamageType] = 0.8;
  123. $DamageScale[harmor, $LaserDamageType] = 0.6;
  124. $DamageScale[harmor, $MortarDamageType] = 0.7;
  125. $DamageScale[harmor, $BlasterDamageType] = 0.7;
  126. $DamageScale[harmor, $ElectricityDamageType] = 1.0;
  127. $DamageScale[harmor, $MineDamageType] = 0.8;
  128.  
  129. $ItemMax[harmor, Blaster] = 1;
  130. $ItemMax[harmor, Chaingun] = 1;
  131. $ItemMax[harmor, Disclauncher] = 1;
  132. $ItemMax[harmor, GrenadeLauncher] = 1;
  133. $ItemMax[harmor, Mortar] = 1;
  134. $ItemMax[harmor, PlasmaGun] = 1;
  135. $ItemMax[harmor, LaserRifle] = 0;
  136. $ItemMax[harmor, EnergyRifle] = 1;
  137. $ItemMax[harmor, TargetingLaser] = 1;
  138. $ItemMax[harmor, MineAmmo] = 3;
  139. $ItemMax[harmor, Grenade] = 8;
  140. $ItemMax[harmor, Beacon] = 3;
  141.  
  142. $ItemMax[harmor, BulletAmmo] = 200;
  143. $ItemMax[harmor, PlasmaAmmo] = 50;
  144. $ItemMax[harmor, DiscAmmo] = 15;
  145. $ItemMax[harmor, GrenadeAmmo] = 15;
  146. $ItemMax[harmor, MortarAmmo] = 10;
  147.  
  148. $ItemMax[harmor, EnergyPack] = 1;
  149. $ItemMax[harmor, RepairPack] = 1;
  150. $ItemMax[harmor, ShieldPack] = 1;
  151. $ItemMax[harmor, SensorJammerPack] = 1;
  152. $ItemMax[harmor, MotionSensorPack] = 1;
  153. $ItemMax[harmor, PulseSensorPack] = 1;
  154. $ItemMax[harmor, DeployableSensorJammerPack] = 1;
  155. $ItemMax[harmor, CameraPack] = 1;
  156. $ItemMax[harmor, TurretPack] = 1;
  157. $ItemMax[harmor, AmmoPack] = 1;
  158. $ItemMax[harmor, RepairKit] = 1;
  159. $ItemMax[harmor, DeployableInvPack] = 1;
  160. $ItemMax[harmor, DeployableAmmoPack] = 1;
  161.  
  162. $MaxWeapons[harmor] = 5;
  163.  
  164. //----------------------------------------------------------------------------
  165. // light Female Armor
  166. //----------------------------------------------------------------------------
  167. $DamageScale[lfemale, $LandingDamageType] = 1.0;
  168. $DamageScale[lfemale, $ImpactDamageType] = 1.0;    
  169. $DamageScale[lfemale, $CrushDamageType] = 1.0;    
  170. $DamageScale[lfemale, $BulletDamageType] = 1.2;
  171. $DamageScale[lfemale, $PlasmaDamageType] = 1.0;
  172. $DamageScale[lfemale, $EnergyDamageType] = 1.3;
  173. $DamageScale[lfemale, $ExplosionDamageType] = 1.0;
  174. $DamageScale[lfemale, $MissileDamageType] = 1.0;
  175. $DamageScale[lfemale, $ShrapnelDamageType] = 1.2;
  176. $DamageScale[lfemale, $DebrisDamageType] = 1.2;
  177. $DamageScale[lfemale, $LaserDamageType] = 1.0;
  178. $DamageScale[lfemale, $MortarDamageType] = 1.3;
  179. $DamageScale[lfemale, $BlasterDamageType] = 1.3;
  180. $DamageScale[lfemale, $ElectricityDamageType] = 1.0;
  181. $DamageScale[lfemale, $MineDamageType] = 1.2;
  182.  
  183. $ItemMax[lfemale, Blaster] = 1;
  184. $ItemMax[lfemale, Chaingun] = 1;
  185. $ItemMax[lfemale, Disclauncher] = 1;
  186. $ItemMax[lfemale, GrenadeLauncher] = 1;
  187. $ItemMax[lfemale, Mortar] = 0;
  188. $ItemMax[lfemale, PlasmaGun] = 1;
  189. $ItemMax[lfemale, LaserRifle] = 1;
  190. $ItemMax[lfemale, EnergyRifle] = 1;
  191. $ItemMax[lfemale, TargetingLaser] = 1;
  192. $ItemMax[lfemale, MineAmmo] = 3;
  193. $ItemMax[lfemale, Grenade] = 5;
  194. $ItemMax[lfemale, Beacon] = 3;
  195.  
  196. $ItemMax[lfemale, BulletAmmo] = 100;
  197. $ItemMax[lfemale, PlasmaAmmo] = 30;
  198. $ItemMax[lfemale, DiscAmmo] = 15;
  199. $ItemMax[lfemale, GrenadeAmmo] = 10;
  200. $ItemMax[lfemale, MortarAmmo] = 10;
  201.  
  202. $ItemMax[lfemale, EnergyPack] = 1;
  203. $ItemMax[lfemale, RepairPack] = 1;
  204. $ItemMax[lfemale, ShieldPack] = 1;
  205. $ItemMax[lfemale, SensorJammerPack] = 1;
  206. $ItemMax[lfemale, MotionSensorPack] = 1;
  207. $ItemMax[lfemale, PulseSensorPack] = 1;
  208. $ItemMax[lfemale, DeployableSensorJammerPack] = 1;
  209. $ItemMax[lfemale, CameraPack] = 1;
  210. $ItemMax[lfemale, TurretPack] = 0;
  211. $ItemMax[lfemale, AmmoPack] = 1;
  212. $ItemMax[lfemale, RepairKit] = 1;
  213. $ItemMax[lfemale, DeployableInvPack] = 0;
  214. $ItemMax[lfemale, DeployableAmmoPack] = 0;
  215.  
  216. $MaxWeapons[lfemale] = 3;
  217.  
  218. //----------------------------------------------------------------------------
  219. // Medium Female Armor
  220. //----------------------------------------------------------------------------
  221. $DamageScale[mfemale, $LandingDamageType] = 1.0;
  222. $DamageScale[mfemale, $ImpactDamageType] = 1.0;
  223. $DamageScale[mfemale, $CrushDamageType] = 1.0;
  224. $DamageScale[mfemale, $BulletDamageType] = 1.0;
  225. $DamageScale[mfemale, $EnergyDamageType] = 1.0;
  226. $DamageScale[mfemale, $PlasmaDamageType] = 0.6;
  227. $DamageScale[mfemale, $ExplosionDamageType] = 1.0;
  228. $DamageScale[mfemale, $MissileDamageType] = 1.0;
  229. $DamageScale[mfemale, $ShrapnelDamageType] = 1.0;
  230. $DamageScale[mfemale, $DebrisDamageType] = 1.0;
  231. $DamageScale[mfemale, $LaserDamageType] = 1.0;
  232. $DamageScale[mfemale, $MortarDamageType] = 1.0;
  233. $DamageScale[mfemale, $BlasterDamageType] = 1.0;
  234. $DamageScale[mfemale, $ElectricityDamageType] = 1.0;
  235. $DamageScale[mfemale, $MineDamageType] = 1.0;
  236.  
  237. $ItemMax[mfemale, Blaster] = 1;
  238. $ItemMax[mfemale, Chaingun] = 1;
  239. $ItemMax[mfemale, Disclauncher] = 1;
  240. $ItemMax[mfemale, GrenadeLauncher] = 1;
  241. $ItemMax[mfemale, Mortar] = 0;
  242. $ItemMax[mfemale, PlasmaGun] = 1;
  243. $ItemMax[mfemale, LaserRifle] = 0;
  244. $ItemMax[mfemale, EnergyRifle] = 1;
  245. $ItemMax[mfemale, TargetingLaser] = 1;
  246. $ItemMax[mfemale, MineAmmo] = 3;
  247. $ItemMax[mfemale, Grenade] = 6;
  248. $ItemMax[mfemale, Beacon] = 3;
  249.  
  250. $ItemMax[mfemale, BulletAmmo] = 150;
  251. $ItemMax[mfemale, PlasmaAmmo] = 40;
  252. $ItemMax[mfemale, DiscAmmo] = 15;
  253. $ItemMax[mfemale, GrenadeAmmo] = 10;
  254. $ItemMax[mfemale, MortarAmmo] = 10;
  255.  
  256. $ItemMax[mfemale, EnergyPack] = 1;
  257. $ItemMax[mfemale, RepairPack] = 1;
  258. $ItemMax[mfemale, ShieldPack] = 1;
  259. $ItemMax[mfemale, SensorJammerPack] = 1;
  260. $ItemMax[mfemale, MotionSensorPack] = 1;
  261. $ItemMax[mfemale, PulseSensorPack] = 1;
  262. $ItemMax[mfemale, DeployableSensorJammerPack] = 1;
  263. $ItemMax[mfemale, CameraPack] = 1;
  264. $ItemMax[mfemale, TurretPack] = 1;
  265. $ItemMax[mfemale, AmmoPack] = 1;
  266. $ItemMax[mfemale, RepairKit] = 1;
  267. $ItemMax[mfemale, DeployableInvPack] = 1;
  268. $ItemMax[mfemale, DeployableAmmoPack] = 1;
  269.  
  270. $MaxWeapons[mfemale] = 4;
  271.  
  272. //------------------------------------------------------------------
  273. // light armor data:
  274. //------------------------------------------------------------------
  275.  
  276. DamageSkinData armorDamageSkins
  277. {
  278.    bmpName[0] = "dskin1_armor";
  279.    bmpName[1] = "dskin2_armor";
  280.    bmpName[2] = "dskin3_armor";
  281.    bmpName[3] = "dskin4_armor";
  282.    bmpName[4] = "dskin5_armor";
  283.    bmpName[5] = "dskin6_armor";
  284.    bmpName[6] = "dskin7_armor";
  285.    bmpName[7] = "dskin8_armor";
  286.    bmpName[8] = "dskin9_armor";
  287.    bmpName[9] = "dskin10_armor";
  288. };
  289.  
  290. PlayerData larmor
  291. {
  292.    className = "Armor";
  293.    shapeFile = "larmor";
  294.    damageSkinData = "armorDamageSkins";
  295.     debrisId = playerDebris;
  296.    flameShapeName = "lflame";
  297.    shieldShapeName = "shield";
  298.    shadowDetailMask = 1;
  299.  
  300.    visibleToSensor = True;
  301.     mapFilter = 1;
  302.     mapIcon = "M_player";
  303.    canCrouch = true;
  304.  
  305.    maxJetSideForceFactor = 0.8;
  306.    maxJetForwardVelocity = 22;
  307.    minJetEnergy = 1;
  308.    jetForce = 236;
  309.    jetEnergyDrain = 0.8;
  310.  
  311.     maxDamage = 0.66;
  312.    maxForwardSpeed = 11;
  313.    maxBackwardSpeed = 10;
  314.    maxSideSpeed = 10;
  315.    groundForce = 40 * 9.0;
  316.    mass = 9.0;
  317.    groundTraction = 3.0;
  318.     maxEnergy = 60;
  319.    drag = 1.0;
  320.    density = 1.2;
  321.  
  322.     minDamageSpeed = 25;
  323.     damageScale = 0.005;
  324.  
  325.    jumpImpulse = 75;
  326.    jumpSurfaceMinDot = 0.2;
  327.  
  328.    // animation data:
  329.    // animation name, one shot, direction
  330.     // firstPerson, chaseCam, thirdPerson, signalThread
  331.    // movement animations:
  332.    animData[0]  = { "root", none, 1, true, true, true, false, 0 };
  333.    animData[1]  = { "run", none, 1, true, false, true, false, 3 };
  334.    animData[2]  = { "runback", none, 1, true, false, true, false, 3 };
  335.    animData[3]  = { "side left", none, 1, true, false, true, false, 3 };
  336.    animData[4]  = { "side left", none, -1, true, false, true, false, 3 };
  337.    animData[5] = { "jump stand", none, 1, true, false, true, false, 3 };
  338.    animData[6] = { "jump run", none, 1, true, false, true, false, 3 };
  339.    animData[7] = { "crouch root", none, 1, true, true, true, false, 3 };
  340.    animData[8] = { "crouch root", none, 1, true, true, true, false, 3 };
  341.    animData[9] = { "crouch root", none, -1, true, true, true, false, 3 };
  342.    animData[10] = { "crouch forward", none, 1, true, false, true, false, 3 };
  343.    animData[11] = { "crouch forward", none, -1, true, false, true, false, 3 };
  344.    animData[12] = { "crouch side left", none, 1, true, false, true, false, 3 };
  345.    animData[13] = { "crouch side left", none, -1, true, false, true, false, 3 };
  346.    animData[14]  = { "fall", none, 1, true, true, true, false, 3 };
  347.    animData[15]  = { "landing", SoundLandOnGround, 1, true, false, false, false, 3 };
  348.    animData[16]  = { "landing", SoundLandOnGround, 1, true, false, false, false, 3 };
  349.    animData[17]  = { "tumble loop", none, 1, true, false, false, false, 3 };
  350.    animData[18]  = { "tumble end", none, 1, true, false, false, false, 3 };
  351.    animData[19] = { "jet", none, 1, true, true, true, false, 3 };
  352.  
  353.    // misc. animations:
  354.    animData[20] = { "PDA access", none, 1, true, false, false, false, 3 };
  355.    animData[21] = { "throw", none, 1, true, false, false, false, 3 };
  356.    animData[22] = { "flyer root", none, 1, false, false, false, false, 3 };
  357.    animData[23] = { "apc root", none, 1, true, true, true, false, 3 };
  358.    animData[24] = { "apc pilot", none, 1, false, false, false, false, 3 };
  359.    
  360.    // death animations:
  361.    animData[25] = { "crouch die", SoundPlayerDeath, 1, false, false, false, false, 4 };
  362.    animData[26] = { "die chest", SoundPlayerDeath, 1, false, false, false, false, 4 };
  363.    animData[27] = { "die head", SoundPlayerDeath, 1, false, false, false, false, 4 };
  364.    animData[28] = { "die grab back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  365.    animData[29] = { "die right side", SoundPlayerDeath, 1, false, false, false, false, 4 };
  366.    animData[30] = { "die left side", SoundPlayerDeath, 1, false, false, false, false, 4 };
  367.    animData[31] = { "die leg left", SoundPlayerDeath, 1, false, false, false, false, 4 };
  368.    animData[32] = { "die leg right", SoundPlayerDeath, 1, false, false, false, false, 4 };
  369.    animData[33] = { "die blown back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  370.    animData[34] = { "die spin", SoundPlayerDeath, 1, false, false, false, false, 4 };
  371.    animData[35] = { "die forward", SoundPlayerDeath, 1, false, false, false, false, 4 };
  372.    animData[36] = { "die forward kneel", SoundPlayerDeath, 1, false, false, false, false, 4 };
  373.    animData[37] = { "die back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  374.  
  375.    // signal moves:
  376.     animData[38] = { "sign over here",  none, 1, true, false, false, false, 2 };
  377.    animData[39] = { "sign point", none, 1, true, false, false, true, 1 };
  378.    animData[40] = { "sign retreat",none, 1, true, false, false, false, 2 };
  379.    animData[41] = { "sign stop", none, 1, true, false, false, true, 1 };
  380.    animData[42] = { "sign salut", none, 1, true, false, false, true, 1 }; 
  381.  
  382.  
  383.     // celebration animations:
  384.    animData[43] = { "celebration 1",none, 1, true, false, false, false, 2 };
  385.    animData[44] = { "celebration 2", none, 1, true, false, false, false, 2 };
  386.    animData[45] = { "celebration 3", none, 1, true, false, false, false, 2 };
  387.  
  388.     // taunt animations:
  389.     animData[46] = { "taunt 1", none, 1, true, false, false, false, 2 };
  390.     animData[47] = { "taunt 2", none, 1, true, false, false, false, 2 };
  391.  
  392.     // poses:
  393.     animData[48] = { "pose kneel", none, 1, true, false, false, true, 1 };
  394.     animData[49] = { "pose stand", none, 1, true, false, false, true, 1 };
  395.  
  396.     // Bonus wave
  397.    animData[50] = { "wave", none, 1, true, false, false, true, 1 };
  398.  
  399.    jetSound = SoundJetLight;
  400.    rFootSounds = 
  401.    {
  402.      SoundLFootRSoft,
  403.      SoundLFootRHard,
  404.      SoundLFootRSoft,
  405.      SoundLFootRHard,
  406.      SoundLFootRSoft,
  407.      SoundLFootRSoft,
  408.      SoundLFootRSoft,
  409.      SoundLFootRHard,
  410.      SoundLFootRSnow,
  411.      SoundLFootRSoft,
  412.      SoundLFootRSoft,
  413.      SoundLFootRSoft,
  414.      SoundLFootRSoft,
  415.      SoundLFootRSoft,
  416.      SoundLFootRSoft
  417.   }; 
  418.    lFootSounds =
  419.    {
  420.       SoundLFootLSoft,
  421.       SoundLFootLHard,
  422.       SoundLFootLSoft,
  423.       SoundLFootLHard,
  424.       SoundLFootLSoft,
  425.       SoundLFootLSoft,
  426.       SoundLFootLSoft,
  427.       SoundLFootLHard,
  428.       SoundLFootLSnow,
  429.       SoundLFootLSoft,
  430.       SoundLFootLSoft,
  431.       SoundLFootLSoft,
  432.       SoundLFootLSoft,
  433.       SoundLFootLSoft,
  434.       SoundLFootLSoft
  435.    };
  436.  
  437.    footPrints = { 0, 1 };
  438.  
  439.    boxWidth = 0.5;
  440.    boxDepth = 0.5;
  441.    boxNormalHeight = 2.3;
  442.    boxCrouchHeight = 1.8;
  443.  
  444.    boxNormalHeadPercentage  = 0.83;
  445.    boxNormalTorsoPercentage = 0.53;
  446.    boxCrouchHeadPercentage  = 0.6666;
  447.    boxCrouchTorsoPercentage = 0.3333;
  448.  
  449.    boxHeadLeftPercentage  = 0;
  450.    boxHeadRightPercentage = 1;
  451.    boxHeadBackPercentage  = 0;
  452.    boxHeadFrontPercentage = 1;
  453. };
  454.  
  455. //------------------------------------------------------------------
  456. // Medium Armor data:
  457. //------------------------------------------------------------------
  458.  
  459. PlayerData marmor
  460. {
  461.    className = "Armor";
  462.    shapeFile = "marmor";
  463.    flameShapeName = "mflame";
  464.    shieldShapeName = "shield";
  465.    damageSkinData = "armorDamageSkins";
  466.     debrisId = playerDebris;
  467.    shadowDetailMask = 1;
  468.  
  469.    canCrouch = false;
  470.    visibleToSensor = True;
  471.     mapFilter = 1;
  472.     mapIcon = "M_player";
  473.  
  474.    maxJetSideForceFactor = 0.8;
  475.    maxJetForwardVelocity = 17;
  476.    minJetEnergy = 1;
  477.    jetForce = 320;
  478.    jetEnergyDrain = 1.0;
  479.  
  480.     maxDamage = 1.0;
  481.    maxForwardSpeed = 8.0;
  482.    maxBackwardSpeed = 7.0;
  483.    maxSideSpeed = 7.0;
  484.    groundForce = 35 * 13.0;
  485.    mass = 13.0;
  486.    groundTraction = 3.0;
  487.     
  488.     maxEnergy = 80;
  489.    drag = 1.0;
  490.    density = 1.5;
  491.  
  492.     minDamageSpeed = 25;
  493.     damageScale = 0.005;
  494.  
  495.    jumpImpulse = 110;
  496.    jumpSurfaceMinDot = 0.2;
  497.  
  498.    // animation data:
  499.    // animation name, one shot, exclude, direction
  500.     // firstPerson, chaseCam, thirdPerson, signalThread
  501.  
  502.    // movement animations:
  503.    animData[0]  = { "root", none, 1, true, true, true, false, 0 };
  504.    animData[1]  = { "run", none, 1, true, false, true, false, 3 };
  505.    animData[2]  = { "runback", none, 1, true, false, true, false, 3 };
  506.    animData[3]  = { "side left", none, 1, true, false, true, false, 3 };
  507.    animData[4]  = { "side left", none, -1, true, false, true, false, 3 };
  508.    animData[5] = { "jump stand", none, 1, true, false, true, false, 3 };
  509.    animData[6] = { "jump run", none, 1, true, false, true, false, 3 };
  510.    animData[7] = { "crouch root", none, 1, true, true, true, false, 3 };
  511.    animData[8] = { "crouch root", none, 1, true, true, true, false, 3 };
  512.    animData[9] = { "crouch root", none, -1, true, true, true, false, 3 };
  513.    animData[10] = { "crouch forward", none, 1, true, false, true, false, 3 };
  514.    animData[11] = { "crouch forward", none, -1, true, false, true, false, 3 };
  515.    animData[12] = { "crouch side left", none, 1, true, false, true, false, 3 };
  516.    animData[13] = { "crouch side left", none, -1, true, false, true, false, 3 };
  517.    animData[14]  = { "fall", none, 1, true, true, true, false, 3 };
  518.    animData[15]  = { "landing", SoundLandOnGround, 1, true, false, false, false, 3 };
  519.    animData[16]  = { "landing", SoundLandOnGround, 1, true, false, false, false, 3 };
  520.    animData[17]  = { "tumble loop", none, 1, true, false, false, false, 3 };
  521.    animData[18]  = { "tumble end", none, 1, true, false, false, false, 3 };
  522.    animData[19] = { "jet", none, 1, true, true, true, false, 3 };
  523.  
  524.    // misc. animations:
  525.    animData[20] = { "PDA access", none, 1, true, false, false, false, 3 };
  526.    animData[21] = { "throw", none, 1, true, false, false, false, 3 };
  527.    animData[22] = { "flyer root", none, 1, false, false, false, false, 3 };
  528.    animData[23] = { "apc root", none, 1, true, true, true, false, 3 };
  529.    animData[24] = { "apc pilot", none, 1, false, false, false, false, 3 };
  530.    
  531.    // death animations:
  532.    animData[25] = { "crouch die", SoundPlayerDeath, 1, false, false, false, false, 4 };
  533.    animData[26] = { "die chest", SoundPlayerDeath, 1, false, false, false, false, 4 };
  534.    animData[27] = { "die head", SoundPlayerDeath, 1, false, false, false, false, 4 };
  535.    animData[28] = { "die grab back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  536.    animData[29] = { "die right side", SoundPlayerDeath, 1, false, false, false, false, 4 };
  537.    animData[30] = { "die left side", SoundPlayerDeath, 1, false, false, false, false, 4 };
  538.    animData[31] = { "die leg left", SoundPlayerDeath, 1, false, false, false, false, 4 };
  539.    animData[32] = { "die leg right", SoundPlayerDeath, 1, false, false, false, false, 4 };
  540.    animData[33] = { "die blown back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  541.    animData[34] = { "die spin", SoundPlayerDeath, 1, false, false, false, false, 4 };
  542.    animData[35] = { "die forward", SoundPlayerDeath, 1, false, false, false, false, 4 };
  543.    animData[36] = { "die forward kneel", SoundPlayerDeath, 1, false, false, false, false, 4 };
  544.    animData[37] = { "die back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  545.  
  546.    // signal moves:
  547.     animData[38] = { "sign over here",  none, 1, true, false, false, false, 2 };
  548.    animData[39] = { "sign point", none, 1, true, false, false, true, 1 };
  549.    animData[40] = { "sign retreat",none, 1, true, false, false, false, 2 };
  550.    animData[41] = { "sign stop", none, 1, true, false, false, true, 1 };
  551.    animData[42] = { "sign salut", none, 1, true, false, false, true, 1 }; 
  552.  
  553.     // celebraton animations:
  554.    animData[43] = { "celebration 1", none, 1, true, false, false, false, 2 };
  555.    animData[44] = { "celebration 2", none, 1, true, false, false, false, 2 };
  556.    animData[45] = { "celebration 3", none, 1, true, false, false, false, 2 };
  557.  
  558.     // taunt anmations:
  559.    animData[46] = { "taunt 1", none, 1, true, false, false, false, 2 };
  560.    animData[47] = { "taunt 2", none, 1, true, false, false, false, 2 };
  561.  
  562.     // poses:
  563.    animData[48] = { "pose kneel", none, 1, true, false, false, true, 1 };
  564.    animData[49] = { "pose stand", none, 1, true, false, false, true, 1 };
  565.  
  566.     // Bonus wave
  567.    animData[50] = { "wave", none, 1, true, false, false, true, 1 };
  568.  
  569.    jetSound = SoundJetLight;
  570.  
  571.    rFootSounds = 
  572.    {
  573.      SoundMFootRSoft,
  574.      SoundMFootRHard,
  575.      SoundMFootRSoft,
  576.      SoundMFootRHard,
  577.      SoundMFootRSoft,
  578.      SoundMFootRSoft,
  579.      SoundMFootRSoft,
  580.      SoundMFootRHard,
  581.      SoundMFootRSnow,
  582.      SoundMFootRSoft,
  583.      SoundMFootRSoft,
  584.      SoundMFootRSoft,
  585.      SoundMFootRSoft,
  586.      SoundMFootRSoft,
  587.      SoundMFootRSoft
  588.   }; 
  589.    lFootSounds =
  590.    {
  591.       SoundMFootLSoft,
  592.       SoundMFootLHard,
  593.       SoundMFootLSoft,
  594.       SoundMFootLHard,
  595.       SoundMFootLSoft,
  596.       SoundMFootLSoft,
  597.       SoundMFootLSoft,
  598.       SoundMFootLHard,
  599.       SoundMFootLSnow,
  600.       SoundMFootLSoft,
  601.       SoundMFootLSoft,
  602.       SoundMFootLSoft,
  603.       SoundMFootLSoft,
  604.       SoundMFootLSoft,
  605.       SoundMFootLSoft
  606.    };
  607.  
  608.    footPrints = { 2, 3 };
  609.  
  610.    boxWidth = 0.7;
  611.    boxDepth = 0.7;
  612.    boxNormalHeight = 2.4;
  613.  
  614.    boxNormalHeadPercentage  = 0.83;
  615.    boxNormalTorsoPercentage = 0.49;
  616.  
  617.    boxHeadLeftPercentage  = 0;
  618.    boxHeadRightPercentage = 1;
  619.    boxHeadBackPercentage  = 0;
  620.    boxHeadFrontPercentage = 1;
  621. };
  622.  
  623. //------------------------------------------------------------------
  624. // Heavy Armor data:
  625. //------------------------------------------------------------------
  626.  
  627. PlayerData harmor
  628. {
  629.    className = "Armor";
  630.    shapeFile = "harmor";
  631.    flameShapeName = "hflame";
  632.    shieldShapeName = "shield";
  633.    damageSkinData = "armorDamageSkins";
  634.     debrisId = playerDebris;
  635.    shadowDetailMask = 1;
  636.  
  637.    visibleToSensor = True;
  638.     mapFilter = 1;
  639.     mapIcon = "M_player";
  640.  
  641.    maxJetSideForceFactor = 0.8;
  642.    maxJetForwardVelocity = 12;
  643.    minJetEnergy = 1;
  644.    jetForce = 385;
  645.    jetEnergyDrain = 1.1;
  646.  
  647.     maxDamage = 1.32;
  648.    maxForwardSpeed = 5.0;
  649.    maxBackwardSpeed = 4.0;
  650.    maxSideSpeed = 4.0;
  651.    groundForce = 35 * 18.0;
  652.    groundTraction = 4.5;
  653.    mass = 18.0;
  654.     maxEnergy = 110;
  655.    drag = 1.0;
  656.    density = 2.5;
  657.    canCrouch = false;
  658.  
  659.     minDamageSpeed = 25;
  660.     damageScale = 0.006;
  661.  
  662.    jumpImpulse = 150;
  663.    jumpSurfaceMinDot = 0.2;
  664.  
  665.    // animation data:
  666.    // animation name, one shot, exclude, direction,
  667.     // firstPerson, chaseCam, thirdPerson, signalThread
  668.  
  669.    // movement animations:
  670.    animData[0]  = { "root", none, 1, true, true, true, false, 0 };
  671.    animData[1]  = { "run", none, 1, true, false, true, false, 3 };
  672.    animData[2]  = { "runback", none, 1, true, false, true, false, 3 };
  673.    animData[3]  = { "side left", none, 1, true, false, true, false, 3 };
  674.    animData[4]  = { "side left", none, -1, true, false, true, false, 3 };
  675.    animData[5] = { "jump stand", none, 1, true, false, true, false, 3 };
  676.    animData[6] = { "jump run", none, 1, true, false, true, false, 3 };
  677.    animData[7] = { "crouch root", none, 1, true, true, true, false, 3 };
  678.    animData[8] = { "crouch root", none, 1, true, true, true, false, 3 };
  679.    animData[9] = { "crouch root", none, -1, true, true, true, false, 3 };
  680.    animData[10] = { "crouch forward", none, 1, true, false, true, false, 3 };
  681.    animData[11] = { "crouch forward", none, -1, true, false, true, false, 3 };
  682.    animData[12] = { "crouch side left", none, 1, true, false, true, false, 3 };
  683.    animData[13] = { "crouch side left", none, -1, true, false, true, false, 3 };
  684.    animData[14]  = { "fall", none, 1, true, true, true, false, 3 };
  685.    animData[15]  = { "landing", SoundLandOnGround, 1, true, false, false, false, 3 };
  686.    animData[16]  = { "landing", SoundLandOnGround, 1, true, false, false, false, 3 };
  687.    animData[17]  = { "tumble loop", none, 1, true, false, false, false, 3 };
  688.    animData[18]  = { "tumble end", none, 1, true, false, false, false, 3 };
  689.    animData[19] = { "jet", none, 1, true, true, true, false, 3 };
  690.  
  691.    // misc. animations:
  692.    animData[20] = { "PDA access", none, 1, true, false, false, false, 3 };
  693.    animData[21] = { "throw", none, 1, true, false, false, false, 3 };
  694.    animData[22] = { "flyer root", none, 1, false, false, false, false, 3 };
  695.    animData[23] = { "apc root", none, 1, true, true, true, false, 3 };
  696.    animData[24] = { "apc pilot", none, 1, false, false, false, false, 3 };
  697.    
  698.    // death animations:
  699.    animData[25] = { "crouch die", SoundPlayerDeath, 1, false, false, false, false, 4 };
  700.    animData[26] = { "die chest", SoundPlayerDeath, 1, false, false, false, false, 4 };
  701.    animData[27] = { "die head", SoundPlayerDeath, 1, false, false, false, false, 4 };
  702.    animData[28] = { "die grab back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  703.    animData[29] = { "die right side", SoundPlayerDeath, 1, false, false, false, false, 4 };
  704.    animData[30] = { "die left side", SoundPlayerDeath, 1, false, false, false, false, 4 };
  705.    animData[31] = { "die leg left", SoundPlayerDeath, 1, false, false, false, false, 4 };
  706.    animData[32] = { "die leg right", SoundPlayerDeath, 1, false, false, false, false, 4 };
  707.    animData[33] = { "die blown back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  708.    animData[34] = { "die spin", SoundPlayerDeath, 1, false, false, false, false, 4 };
  709.    animData[35] = { "die forward", SoundPlayerDeath, 1, false, false, false, false, 4 };
  710.    animData[36] = { "die forward kneel", SoundPlayerDeath, 1, false, false, false, false, 4 };
  711.    animData[37] = { "die back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  712.  
  713.    // signal moves:
  714.     animData[38] = { "sign over here",  none, 1, true, false, false, false, 2 };
  715.    animData[39] = { "sign point", none, 1, true, false, false, true, 1 };
  716.    animData[40] = { "sign retreat",none, 1, true, false, false, false, 2 };
  717.    animData[41] = { "sign stop", none, 1, true, false, false, true, 1 };
  718.    animData[42] = { "sign salut", none, 1, true, false, false, true, 1 }; 
  719.  
  720.     // celebraton animations:
  721.    animData[43] = { "celebration 1", none, 1, true, false, false, false, 2 };
  722.    animData[44] = { "celebration 2", none, 1, true, false, false, false, 2 };
  723.    animData[45] = { "celebration 3", none, 1, true, false, false, false, 2 };
  724.  
  725.     // taunt anmations:
  726.    animData[46] = { "taunt 1", none, 1, true, false, false, false, 2 };
  727.    animData[47] = { "taunt 2", none, 1, true, false, false, false, 2 };
  728.  
  729.     // poses:
  730.    animData[48] = { "pose kneel", none, 1, true, false, false, true, 1 };
  731.    animData[49] = { "pose stand", none, 1, true, false, false, true, 1 };
  732.  
  733.     // Bonus wave
  734.    animData[50] = { "wave", none, 1, true, false, false, true, 1 };
  735.  
  736.    jetSound = SoundJetHeavy;
  737.  
  738.    rFootSounds = 
  739.    {
  740.      SoundHFootRSoft,
  741.      SoundHFootRHard,
  742.      SoundHFootRSoft,
  743.      SoundHFootRHard,
  744.      SoundHFootRSoft,
  745.      SoundHFootRSoft,
  746.      SoundHFootRSoft,
  747.      SoundHFootRHard,
  748.      SoundHFootRSnow,
  749.      SoundHFootRSoft,
  750.      SoundHFootRSoft,
  751.      SoundHFootRSoft,
  752.      SoundHFootRSoft,
  753.      SoundHFootRSoft,
  754.      SoundHFootRSoft
  755.   }; 
  756.    lFootSounds =
  757.    {
  758.       SoundHFootLSoft,
  759.       SoundHFootLHard,
  760.       SoundHFootLSoft,
  761.       SoundHFootLHard,
  762.       SoundHFootLSoft,
  763.       SoundHFootLSoft,
  764.       SoundHFootLSoft,
  765.       SoundHFootLHard,
  766.       SoundHFootLSnow,
  767.       SoundHFootLSoft,
  768.       SoundHFootLSoft,
  769.       SoundHFootLSoft,
  770.       SoundHFootLSoft,
  771.       SoundHFootLSoft,
  772.       SoundHFootLSoft
  773.    };
  774.  
  775.    footPrints = { 4, 5 };
  776.  
  777.    boxWidth = 0.8;
  778.    boxDepth = 0.8;
  779.    boxNormalHeight = 2.6;
  780.  
  781.    boxNormalHeadPercentage  = 0.70;
  782.    boxNormalTorsoPercentage = 0.45;
  783.  
  784.    boxHeadLeftPercentage  = 0.48;
  785.    boxHeadRightPercentage = 0.70;
  786.    boxHeadBackPercentage  = 0.48;
  787.    boxHeadFrontPercentage = 0.60;
  788. };
  789.  
  790. //------------------------------------------------------------------
  791. // Light female data:
  792. //------------------------------------------------------------------
  793.  
  794. PlayerData lfemale
  795. {
  796.    className = "Armor";
  797.    shapeFile = "lfemale";
  798.    flameShapeName = "lflame";
  799.    shieldShapeName = "shield";
  800.    damageSkinData = "armorDamageSkins";
  801.     debrisId = playerDebris;
  802.    shadowDetailMask = 1;
  803.  
  804.    visibleToSensor = True;
  805.     mapFilter = 1;
  806.     mapIcon = "M_player";
  807.  
  808.    canCrouch = true;
  809.    maxJetSideForceFactor = 0.8;
  810.    maxJetForwardVelocity = 22;
  811.    minJetEnergy = 1;
  812.    jetForce = 236;
  813.    jetEnergyDrain = 0.8;
  814.  
  815.     maxDamage = 0.66;
  816.    maxForwardSpeed = 11;
  817.    maxBackwardSpeed = 10;
  818.    maxSideSpeed = 10;
  819.    groundForce = 40 * 9.0;
  820.    mass = 9.0;
  821.    groundTraction = 3.0;
  822.     maxEnergy = 60;
  823.    drag = 1.0;
  824.    density = 1.2;
  825.  
  826.     minDamageSpeed = 25;
  827.     damageScale = 0.005;
  828.  
  829.    jumpImpulse = 75;
  830.    jumpSurfaceMinDot = 0.2;
  831.  
  832.    // animation data:
  833.    // animation name, one shot, exclude, direction,
  834.     // firstPerson, chaseCam, thirdPerson, signalThread
  835.  
  836.    // movement animations:
  837.    // movement animations:
  838.    animData[0]  = { "root", none, 1, true, true, true, false, 0 };
  839.    animData[1]  = { "run", none, 1, true, false, true, false, 3 };
  840.    animData[2]  = { "runback", none, 1, true, false, true, false, 3 };
  841.    animData[3]  = { "side left", none, 1, true, false, true, false, 3 };
  842.    animData[4]  = { "side left", none, -1, true, false, true, false, 3 };
  843.    animData[5] = { "jump stand", none, 1, true, false, true, false, 3 };
  844.    animData[6] = { "jump run", none, 1, true, false, true, false, 3 };
  845.    animData[7] = { "crouch root", none, 1, true, true, true, false, 3 };
  846.    animData[8] = { "crouch root", none, 1, true, true, true, false, 3 };
  847.    animData[9] = { "crouch root", none, -1, true, true, true, false, 3 };
  848.    animData[10] = { "crouch forward", none, 1, true, false, true, false, 3 };
  849.    animData[11] = { "crouch forward", none, -1, true, false, true, false, 3 };
  850.    animData[12] = { "crouch side left", none, 1, true, false, true, false, 3 };
  851.    animData[13] = { "crouch side left", none, -1, true, false, true, false, 3 };
  852.    animData[14]  = { "fall", none, 1, true, true, true, false, 3 };
  853.    animData[15]  = { "landing", SoundLandOnGround, 1, true, false, false, false, 3 };
  854.    animData[16]  = { "landing", SoundLandOnGround, 1, true, false, false, false, 3 };
  855.    animData[17]  = { "tumble loop", none, 1, true, false, false, false, 3 };
  856.    animData[18]  = { "tumble end", none, 1, true, false, false, false, 3 };
  857.    animData[19] = { "jet", none, 1, true, true, true, false, 3 };
  858.  
  859.    // misc. animations:
  860.    animData[20] = { "PDA access", none, 1, true, false, false, false, 3 };
  861.    animData[21] = { "throw", none, 1, true, false, false, false, 3 };
  862.    animData[22] = { "flyer root", none, 1, false, false, false, false, 3 };
  863.    animData[23] = { "apc root", none, 1, true, true, true, false, 3 };
  864.    animData[24] = { "apc root", none, 1, false, false, false, false, 3 };
  865.    
  866.    // death animations:
  867.    animData[25] = { "crouch die", SoundPlayerDeath, 1, false, false, false, false, 4 };
  868.    animData[26] = { "die chest", SoundPlayerDeath, 1, false, false, false, false, 4 };
  869.    animData[27] = { "die head", SoundPlayerDeath, 1, false, false, false, false, 4 };
  870.    animData[28] = { "die grab back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  871.    animData[29] = { "die right side", SoundPlayerDeath, 1, false, false, false, false, 4 };
  872.    animData[30] = { "die left side", SoundPlayerDeath, 1, false, false, false, false, 4 };
  873.    animData[31] = { "die leg left", SoundPlayerDeath, 1, false, false, false, false, 4 };
  874.    animData[32] = { "die leg right", SoundPlayerDeath, 1, false, false, false, false, 4 };
  875.    animData[33] = { "die blown back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  876.    animData[34] = { "die spin", SoundPlayerDeath, 1, false, false, false, false, 4 };
  877.    animData[35] = { "die forward", SoundPlayerDeath, 1, false, false, false, false, 4 };
  878.    animData[36] = { "die forward kneel", SoundPlayerDeath, 1, false, false, false, false, 4 };
  879.    animData[37] = { "die back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  880.  
  881.    // signal moves:
  882.     animData[38] = { "sign over here",  none, 1, true, false, false, false, 2 };
  883.    animData[39] = { "sign point", none, 1, true, false, false, true, 1 };
  884.    animData[40] = { "sign retreat",none, 1, true, false, false, false, 2 };
  885.    animData[41] = { "sign stop", none, 1, true, false, false, true, 1 };
  886.    animData[42] = { "sign salut", none, 1, true, false, false, true, 1 }; 
  887.  
  888.     // celebraton animations:
  889.    animData[43] = { "celebration 1", none, 1, true, false, false, false, 2 };
  890.    animData[44] = { "celebration 2", none, 1, true, false, false, false, 2 };
  891.    animData[45] = { "celebration 3", none, 1, true, false, false, false, 2 };
  892.  
  893.     // taunt anmations:
  894.    animData[46] = { "taunt 1", none, 1, true, false, false, false, 2 };
  895.    animData[47] = { "taunt 2", none, 1, true, false, false, false, 2 };
  896.  
  897.     // poses:
  898.    animData[48] = { "pose kneel", none, 1, true, false, false, true, 1 };
  899.    animData[49] = { "pose stand", none, 1, true, false, false, true, 1 };
  900.  
  901.     // Bonus wave
  902.    animData[50] = { "wave", none, 1, true, false, false, true, 1 };
  903.  
  904.  
  905.    jetSound = SoundJetLight;
  906.  
  907.    rFootSounds = 
  908.    {
  909.      SoundLFootRSoft,
  910.      SoundLFootRHard,
  911.      SoundLFootRSoft,
  912.      SoundLFootRHard,
  913.      SoundLFootRSoft,
  914.      SoundLFootRSoft,
  915.      SoundLFootRSoft,
  916.      SoundLFootRHard,
  917.      SoundLFootRSnow,
  918.      SoundLFootRSoft,
  919.      SoundLFootRSoft,
  920.      SoundLFootRSoft,
  921.      SoundLFootRSoft,
  922.      SoundLFootRSoft,
  923.      SoundLFootRSoft
  924.   }; 
  925.    lFootSounds =
  926.    {
  927.       SoundLFootLSoft,
  928.       SoundLFootLHard,
  929.       SoundLFootLSoft,
  930.       SoundLFootLHard,
  931.       SoundLFootLSoft,
  932.       SoundLFootLSoft,
  933.       SoundLFootLSoft,
  934.       SoundLFootLHard,
  935.       SoundLFootLSnow,
  936.       SoundLFootLSoft,
  937.       SoundLFootLSoft,
  938.       SoundLFootLSoft,
  939.       SoundLFootLSoft,
  940.       SoundLFootLSoft,
  941.       SoundLFootLSoft
  942.    };
  943.  
  944.    footPrints = { 0, 1 };
  945.  
  946.    boxWidth = 0.5;
  947.    boxDepth = 0.5;
  948.    boxNormalHeight = 2.3;
  949.    boxCrouchHeight = 1.8;
  950.  
  951.    boxNormalHeadPercentage  = 0.85;
  952.    boxNormalTorsoPercentage = 0.53;
  953.    boxCrouchHeadPercentage  = 0.88;
  954.    boxCrouchTorsoPercentage = 0.35;
  955.  
  956.    boxHeadLeftPercentage  = 0;
  957.    boxHeadRightPercentage = 1;
  958.    boxHeadBackPercentage  = 0;
  959.    boxHeadFrontPercentage = 1;
  960. };
  961.  
  962. //------------------------------------------------------------------
  963. // Medium female data:
  964. //------------------------------------------------------------------
  965.  
  966. PlayerData mfemale
  967. {
  968.    className = "Armor";
  969.    shapeFile = "mfemale";
  970.    flameShapeName = "mflame";
  971.    shieldShapeName = "shield";
  972.    damageSkinData = "armorDamageSkins";
  973.     debrisId = playerDebris;
  974.    shadowDetailMask = 1;
  975.  
  976.    visibleToSensor = True;
  977.     mapFilter = 1;
  978.     mapIcon = "M_player";
  979.  
  980.    maxJetSideForceFactor = 0.8;
  981.    maxJetForwardVelocity = 17;
  982.    minJetEnergy = 1;
  983.    jetForce = 320;
  984.    jetEnergyDrain = 1.0;
  985.  
  986.    canCrouch = false;
  987.     maxDamage = 1.0;
  988.    maxForwardSpeed = 8.0;
  989.    maxBackwardSpeed = 7.0;
  990.    maxSideSpeed = 7.0;
  991.    groundForce = 35 * 13.0;
  992.    mass = 13.0;
  993.    groundTraction = 3.0;
  994.     maxEnergy = 80;
  995.    mass = 13.0;
  996.    drag = 1.0;
  997.    density = 1.5;
  998.  
  999.     minDamageSpeed = 25;
  1000.     damageScale = 0.005;
  1001.  
  1002.    jumpImpulse = 110;
  1003.    jumpSurfaceMinDot = 0.2;
  1004.  
  1005.    // animation data:
  1006.    // animation name, one shot, exclude, direction,
  1007.     // firstPerson, chaseCam, thirdPerson, signalThread
  1008.  
  1009.    // movement animations:
  1010.    animData[0]  = { "root", none, 1, true, true, true, false, 0 };
  1011.    animData[1]  = { "run", none, 1, true, false, true, false, 3 };
  1012.    animData[2]  = { "runback", none, 1, true, false, true, false, 3 };
  1013.    animData[3]  = { "side left", none, 1, true, false, true, false, 3 };
  1014.    animData[4]  = { "side left", none, -1, true, false, true, false, 3 };
  1015.    animData[5] = { "jump stand", none, 1, true, false, true, false, 3 };
  1016.    animData[6] = { "jump run", none, 1, true, false, true, false, 3 };
  1017.    animData[7] = { "crouch root", none, 1, true, false, true, false, 3 };
  1018.    animData[8] = { "crouch root", none, 1, true, false, true, false, 3 };
  1019.    animData[9] = { "crouch root", none, -1, true, false, true, false, 3 };
  1020.    animData[10] = { "crouch forward", none, 1, true, false, true, false, 3 };
  1021.    animData[11] = { "crouch forward", none, -1, true, false, true, false, 3 };
  1022.    animData[12] = { "crouch side left", none, 1, true, false, true, false, 3 };
  1023.    animData[13] = { "crouch side left", none, -1, true, false, true, false, 3 };
  1024.    animData[14]  = { "fall", none, 1, true, true, true, false, 3 };
  1025.    animData[15]  = { "landing", SoundLandOnGround, 1, true, false, false, false, 3 };
  1026.    animData[16]  = { "landing", SoundLandOnGround, 1, true, false, false, false, 3 };
  1027.    animData[17]  = { "tumble loop", none, 1, true, false, false, false, 3 };
  1028.    animData[18]  = { "tumble end", none, 1, true, false, false, false, 3 };
  1029.    animData[19] = { "jet", none, 1, true, true, true, false, 3 };
  1030.  
  1031.    // misc. animations:
  1032.    animData[20] = { "PDA access", none, 1, true, false, false, false, 3 };
  1033.    animData[21] = { "throw", none, 1, true, false, false, false, 3 };
  1034.    animData[22] = { "flyer root", none, 1, false, false, false, false, 3 };
  1035.    animData[23] = { "apc root", none, 1, true, true, true, false, 3 };
  1036.    animData[24] = { "apc root", none, 1, false, false, false, false, 3 };
  1037.    
  1038.    // death animations:
  1039.    animData[25] = { "crouch die", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1040.    animData[26] = { "die chest", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1041.    animData[27] = { "die head", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1042.    animData[28] = { "die grab back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1043.    animData[29] = { "die right side", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1044.    animData[30] = { "die left side", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1045.    animData[31] = { "die leg left", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1046.    animData[32] = { "die leg right", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1047.    animData[33] = { "die blown back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1048.    animData[34] = { "die spin", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1049.    animData[35] = { "die forward", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1050.    animData[36] = { "die forward kneel", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1051.    animData[37] = { "die back", SoundPlayerDeath, 1, false, false, false, false, 4 };
  1052.  
  1053.    // signal moves:
  1054.     animData[38] = { "sign over here",  none, 1, true, false, false, false, 2 };
  1055.    animData[39] = { "sign point", none, 1, true, false, false, true, 1 };
  1056.    animData[40] = { "sign retreat",none, 1, true, false, false, false, 2 };
  1057.    animData[41] = { "sign stop", none, 1, true, false, false, true, 1 };
  1058.    animData[42] = { "sign salut", none, 1, true, false, false, true, 1 }; 
  1059.  
  1060.     // celebraton animations:
  1061.    animData[43] = { "celebration 1", none, 1, true, false, false, false, 2 };
  1062.    animData[44] = { "celebration 2", none, 1, true, false, false, false, 2 };
  1063.    animData[45] = { "celebration 3", none, 1, true, false, false, false, 2 };
  1064.  
  1065.     // taunt anmations:
  1066.    animData[46] = { "taunt 1", none, 1, true, false, false, false, 2 };
  1067.    animData[47] = { "taunt 2", none, 1, true, false, false, false, 2 };
  1068.  
  1069.     // poses:
  1070.    animData[48] = { "pose kneel", none, 1, true, false, false, true, 1 };
  1071.    animData[49] = { "pose stand", none, 1, true, false, false, true, 1 };
  1072.  
  1073.     // Bonus wave
  1074.    animData[50] = { "wave", none, 1, true, false, false, true, 1 };
  1075.  
  1076.    jetSound = SoundJetLight;
  1077.  
  1078.    rFootSounds = 
  1079.    {
  1080.      SoundMFootRSoft,
  1081.      SoundMFootRHard,
  1082.      SoundMFootRSoft,
  1083.      SoundMFootRHard,
  1084.      SoundMFootRSoft,
  1085.      SoundMFootRSoft,
  1086.      SoundMFootRSoft,
  1087.      SoundMFootRHard,
  1088.      SoundMFootRSnow,
  1089.      SoundMFootRSoft,
  1090.      SoundMFootRSoft,
  1091.      SoundMFootRSoft,
  1092.      SoundMFootRSoft,
  1093.      SoundMFootRSoft,
  1094.      SoundMFootRSoft
  1095.   }; 
  1096.    lFootSounds =
  1097.    {
  1098.       SoundMFootLSoft,
  1099.       SoundMFootLHard,
  1100.       SoundMFootLSoft,
  1101.       SoundMFootLHard,
  1102.       SoundMFootLSoft,
  1103.       SoundMFootLSoft,
  1104.       SoundMFootLSoft,
  1105.       SoundMFootLHard,
  1106.       SoundMFootLSnow,
  1107.       SoundMFootLSoft,
  1108.       SoundMFootLSoft,
  1109.       SoundMFootLSoft,
  1110.       SoundMFootLSoft,
  1111.       SoundMFootLSoft,
  1112.       SoundMFootLSoft
  1113.    };
  1114.  
  1115.    footPrints = { 2, 3 };
  1116.  
  1117.    boxWidth = 0.7;
  1118.    boxDepth = 0.7;
  1119.    boxNormalHeight = 2.4;
  1120.  
  1121.    boxNormalHeadPercentage  = 0.84;
  1122.    boxNormalTorsoPercentage = 0.55;
  1123.  
  1124.    boxHeadLeftPercentage  = 0;
  1125.    boxHeadRightPercentage = 1;
  1126.    boxHeadBackPercentage  = 0;
  1127.    boxHeadFrontPercentage = 1;
  1128. };
  1129.  
  1130. //------------------------------------------------------------------
  1131. //
  1132. //------------------------------------------------------------------
  1133.  
  1134.  
  1135.  
  1136.  
  1137.  
  1138.  
  1139.  
  1140.